option(ATOMIC_JAVASCRIPT "Build JS Bindings" ON)
if (WEB)
    set(ATOMIC_DOTNET OFF)
else ()
    option(ATOMIC_DOTNET "Build .NET Bindings" ON)
endif ()
option(ATOMIC_EDITOR "Build Editor" ON)
option(ATOMIC_DATABASE_SQLITE "Enable SQLite database subsystem" OFF)
option(ATOMIC_DATABASE_ODBC "Enable ODBC database subsystem" OFF)
option(ATOMIC_IK "Enable inverse kinematics subsystem" OFF)
option(ATOMIC_PROFILING "Enable profiler" ${ATOMIC_RELEASE_OFF})

if (WIN32)
    option (ATOMIC_D3D9 "Use DirectX 9" OFF)
    option (ATOMIC_OPENGL "Use OpenGL" OFF)
    if (NOT ATOMIC_D3D9 AND NOT ATOMIC_OPENGL)
        set (ATOMIC_D3D11 ON)
    endif ()
endif ()

if (ATOMIC_OPENGL)
    message(STATUS "Renderer: OpenGL")
elseif (ATOMIC_D3D11)
    message(STATUS "Renderer: D3D11")
elseif (ATOMIC_D3D9)
    message(STATUS "Renderer: D3D9")
endif ()

add_subdirectory(ThirdParty)
add_subdirectory(Atomic)

if (ATOMIC_JAVASCRIPT)
    add_subdirectory(AtomicPlayer)
    add_subdirectory(AtomicJS)
    add_subdirectory(AtomicPlayerJS)
endif ()

if (ATOMIC_WEBVIEW)
    add_subdirectory(AtomicWebView)
endif ()

if (ATOMIC_DOTNET)
    add_subdirectory(AtomicApp)
    add_subdirectory(AtomicNET)
endif ()

if (ATOMIC_DESKTOP)
    if (ATOMIC_DOTNET OR ATOMIC_JAVASCRIPT)
        add_subdirectory(AtomicTool)
    endif ()
    add_subdirectory(Tools)
    add_subdirectory(ToolCore)
    if (ATOMIC_JAVASCRIPT)
        add_subdirectory(ToolCoreJS)
    endif ()
    if (ATOMIC_WEBVIEW AND ATOMIC_EDITOR)
        add_subdirectory(AtomicEditor)
    endif ()
endif ()

include(AtomicDocList)
